"""
队列实现击鼓传花游戏
"""

def hot_potato(names, num):
    """
    击鼓传花游戏：模拟多人传花，数到num的人淘汰，最后剩下的人为赢家
    names：参与人员列表
    num：淘汰数字
    """
    from collections import deque
    queue = deque(names)
    while len(queue) > 1:
        # 模拟传花过程，将队首元素移到队尾，共num次
        for _ in range(num):
            queue.append(queue.popleft())
        # 淘汰当前队首元素
        queue.popleft()
    return queue[0]  # 返回最后赢家

# 测试
print(hot_potato(["Alice", "Bob", "Charlie", "David"], 3))  # 输出：Charlie